使用Docker 快速体验TDengine的官方文档地址如下:https://www.taosdata.com/cn/documentation/getting-started/docker ,按照这个操作 ,外部的应用程序连不上TDengine,这里记录下体验的完整结果。 windows 下起 docker 的完整命令行: docker run -tid --privileged=true --name=tdengine --hostname=tdengine -p 6030 -6042:6030-6042/tcp -p 6030-6043:6030-6043/udp tdengine/tdengine 编辑 Windows\System32\drivers\etc\hosts 并添加 "127.0.0.1 tdengine" 安装 TDengine client for Windows C:\TDengine\taos.exe -h tdengine 安装麦壳饼 开发的可视化管理工具
环境准备Docker环境安装部署TDengine容器前,需先确保服务器已安装Docker环境。 引擎、DockerCompose的安装与配置,并启动Docker服务。 tdengine/connector/#restful总结本文详细介绍了TDengine的Docker容器化部署方案,包括环境准备、镜像拉取、容器部署、功能测试、生产环境建议及故障排查等内容。 关键要点:使用一键脚本可快速部署Docker环境,简化前期准备工作镜像拉取需使用轩辕地址xxx.xuanyuan.run/tdengine/tdengine:latest容器部署需注意端口映射(TCP/ https://xuanyuan.cloud/r/tdengine/tdengine/tags,及时更新镜像版本以获取最新功能和安全修复通过本文档的指导,相信您已能够顺利实现TDENGINE的Docker
TDengine是什么? TDengine 采取一个数据采集点一张表的策略,该策略会影响TDengine整体表结构的设计。 TDengine一些独特的设计点: 超级表,在 TDengine 的设计里,表用来代表一个具体的数据采集点(一个设备),超级表用来代表一组相同类型的数据采集点集合。 优点:跨平台性好,不需要创建的docker镜像涵盖taosd驱动 缺点:性能比原生连接慢,性能降幅在30%左右。 STATE_WINDOW(status); 整体架构 主要逻辑单元 物理节点(pnode): pnode 是一独立运行、拥有自己的计算、存储和网络能力的计算机,可以是安装有 OS 的物理机、虚拟机或 Docker
TDengine是一个开源、高性能、分布式,支持SQL的时序数据库。 1.1. 背景 作为开源爱好者,最初看到TDengine,心里就有些痒痒。简单试用后,更是由衷地喜欢。 后来,混进了TDengine的微信群交流,陶总(Jeff Tao)也明确说运营商和话单也是他们明确支持的方向。但琐事繁忙我却一直没有动手,不过却一直关注TDengine的发展。 再再后来,原融云杨攀也加入了TDengine,就有了更多交流和探讨,我也终于下定决心写一个开源的FreeSWITCH TDengine模块。 关于TDengine,我也是小白,希望跟大家共同学习。 对TDengine不了解的可以先阅读TDengine的模型相关文档。 由于终端通话话单不需要更细的拆分粒度,但是TDengine底层需要,TDengine有没有方法解决时间戳冲突的插入问题(不能丢话单!)。 我们将与TDengine工程师团队深入交流解决这些问题。
tdengine 常用命令 Tdengine是一款国产高性能时序数据库,以下常用问题排查使用指令。
转发一则消息: 对TDengine开源项目感兴趣的朋友,可报名参加。推荐人请填陶建辉,可获得赠票。
什么是 TDengine 早在 TDengine 还在开发阶段,就知道了它是主要运用在物联网领域的数据库。它的创始人是一位充满热情的资深程序员--陶建辉老师。 TDengine 是涛思数据专为物联网、车联网、工业互联网、IT 运维等设计和优化的大数据平台。 上面的内容来源于官方 GitHub:TDengine/README-CN.md at develop · taosdata/TDengine · GitHub ,感兴趣的小伙伴可以去看一下。 体验 TDengine 我们输入几条 SQL 语句来看看运行效果。 毕竟在物联网领域我认为 TDengine 绝对可以算是顶流的产品了。
tdengine是国内涛思数据开源的一款高性能时序数据库,尤其针对物联网应用领域,大部分采用C++语言开发,所以不存在类似cassandra的GC问题,涛思官网对自家产品与其他几款时序数据库做了比较详尽的性能对比 ,详见:文档 | 涛思数据 tdengine在很多方面性能都远超其他竞品,tdengine之所以快有开发语言问题,更多的是其在多方面的优化,比如一设备一表的设计,这种设计不管是读取还是插入都会有不同程度的性能提升 好了,进入今天的正题,说说tdengine的超级表设计,超级表是为了更好的管理一设备一表的模式而设计的,首先要强调的是tdengine是一款结构化的数据库(需要提前设计表结构),尤其是设备很多的时候,总不能提前为每个设备创建表结构 也就是说tdengine目前是不支持直接通过超级表插入数据的,笔者觉得也许这只是一个中间阶段,这种设计也许是从tdengine自身开发人员的角度出发的,使用者有时并不需要关注这些东西,期待可以直接通过超级表插入数据的功能 PS: 1、虽然tdengine暂时不支持通过超级表插入数据,但是支持通过超级表读取数据。 参考文章: 1、文档 | 涛思数据
此外,TDengine 提供了开放的 API 和丰富的生态工具链,可与多种数据分析、可视化工具集成,方便用户进行数据分析和挖掘。 TDengine 还支持多种数据格式的存储,包括关系型、非关系型、半结构化等,可满足不同类型数据的存储和管理需求。 目前码匠已经实现了与 TDengine 数据源的连接,支持对 TDengine 数据进行增、删、改、查, 同时还支持将数据绑定至各种组件,并通过简单的代码实现数据的可视化和计算等操作,能让您快速、高效地搭建应用和内部系统 在码匠中集成 TDengine 步骤一:新建数据源连接,选择 TDengine 数据源,并根据提示填写相应配置。 图片 步骤二:新建 TDengine 查询。 图片 在码匠中使用 TDengine 操作数据: 在码匠中可以对 TDengine 数据进行增、删、改、查的操作 使用数据: 这两种模式下,用户可以在左侧的查询面板内查看数据结构,并通过{{yourQueryName.data
简单易用:对系统管理员来说,TDengine 大幅降低了管理和维护的代价。对开发者来说, TDengine 提供了简单的接口、极简的解决方案和与第三方工具的无缝集成。 对数据分析专家来说,TDengine 提供了便捷的数据访问能力。 分析能力:通过超级表、存储计算分离、分区分片、预计算和其它技术,TDengine 能够高效地浏览、格式化和访问数据。 TDengine 技术生态图 上图中,左侧是各种数据采集或消息队列,包括 OPC-UA、MQTT、Telegraf、也包括 Kafka,他们的数据将被源源不断的写入到 TDengine。 要求容错和高可靠 √ TDengine 的集群功能,自动提供容错灾备等高可靠功能。 标准化规范 √ TDengine 使用标准的 SQL 语言提供主要功能,遵守标准化规范。 安装成功后,在终端中启动 TDengine 服务: sudo systemctl start taosd 用户可以使用 TDengine Shell 来连接 TDengine 服务,在终端中,输入: taos
前言 TDengine是一个高效的存储、查询、分析时序大数据的平台,专为物联网、车联网、工业互联网、运维监测等优化而设计。 TDengine TDengine 是涛思数据面对高速增长的物联网大数据市场和技术挑战推出的创新性的大数据处理产品,它不依赖任何第三方 软件,也不是优化或包装了一个开源的数据库或流式计算产品,而是在吸取众多传统关系型数据库 [6177a00a2ab3f51d91c9ce88.png] 快速安装 目前TDengine官方支持安装包,源码和docker进行安装,现在新增通过Rainbond进行安装,通过Rainbond安装有什么优势呢 集成了TDengine官方推荐的可视化探测工具Grafana,开盒即用,方便快捷。 集成了TDengine三节点集群,无需手动配置,安装即集群模式,提高部署效率。 性能测试 基础测试环境 数据呈现 TDengine版本 2.2.1.1 TDengine集群节点数量 3 TDengine
最近涛思数据开源的TDengine也是这样一个针对专用领域的优化方案,TDengine的官方介绍如下: “TDengine是一个针对物联网,车联网和工业物联网领域优化的开源大数据平台。 你可以免费的使用官方发布的TDengine社区版的二进制软件,但是如果你有修改或者基于TDengine衍生开发的软件产品,那么这部分软件也必须以AGPL协议的方式开源出来。 数据的删改支持 TDengine不支持对已写入的数据进行删除或者修改操作。TDengine的设计基于一个假设:数据由IOT的联网设备产生,时间序列的数据一旦产生便成为历史不再发生变化。 从TDengine的文档中了解到,对于存储时间序列数据的vnode节点,TDengine企业版使用了master/slave异步写的方式来将数据同步到slave。 当前完整的TDengine开源代码近13w行,本文仅选取了项目的若干点进行探讨,TDengine在工程方面也有不少值得借鉴的地方。
prepare.sh 是用来准备测试环境的脚本,包含三部分,1.安装docker程序,2.安装TDengine的客户端,3.拉取InfluxDB和TDengine的Docker镜像。 #! /bin/bashset -x#install dockercurl -fsSL https://get.docker.com -o get-docker.shsudo sh get-docker.sh #pull influxdb and tdengine docker imagesdocker pull influxdbdocker pull tdengine/tdengine:v1.6.4.5.c 如果目标系统上已经安装了docker程序,就不用执行这个prepare.sh脚本了,可以直接按脚本里的第二、三部分去安装TDengine Client和拉取对应的Docker镜像。 失败 3.启动前请先将系统里运行的InfluxDB、TDengine停止下来,释放出这俩个数据库占用的端口,否则Docker container加载的时候会因为端口被占用了导致加载失败,从而无法完成测试
TDengine采用数据驱动的方式让缓存中的数据写入硬盘进行持久化存储。当vnode中缓存的数据达到一定规模时,为了不阻塞后续数据的写入,TDengine也会拉起落盘线程将缓存的数据写入持久化存储。 TDengine在数据落盘时会打开新的数据库日志文件,在落盘成功后则会删除老的数据库日志文件,避免日志文件无限制地增长。 为充分利用时序数据特点,TDengine将一个vnode保存在持久化存储的数据切分成多个文件,每个文件只保存固定天数的数据,这个天数由系统配置参数days决定。 截至到TDengine-server-2.2.0.2版本,参数keep可以修改,但对于参数days,一旦设置后,不可修改,后期版本也许可以更改。
1.主要逻辑单元 TDengine 分布式架构的逻辑结构图如下: 图 1 TDengine架构示意图 一个完整的 TDengine 系统是运行在一到多个物理节点上的,逻辑上,它包含数据节点(dnode) 物理节点(pnode): pnode 是一独立运行、拥有自己的计算、存储和网络能力的计算机,可以是安装有OS的物理机、虚拟机或 Docker 容器。 TDengine 完全依赖 FQDN 来进行网络通讯,如果不了解 FQDN,请看博文《一篇文章说清楚 TDengine 的 FQDN》。 (详细的端口情况请参见 TDengine 2.0 端口说明) **集群对外连接:**TDengine 集群可以容纳单个、多个甚至几千个数据节点。 TDengine 充分利用这一特性,将最近到达的(当前状态)数据保存在缓存中。 TDengine 通过查询函数向用户提供毫秒级的数据获取能力。
前言 还是结合上一阶段的工作,为TPS满足合同里的要求,预研数据库切换为TDengine。所以查看数据的工具我得能连上去看,习惯了Dbeaver,所以先把Dbeaver整的能连接使用。 一、Dbeaver对TDengine支持情况 这个数据库是国产开源的时序数据库,Dbeaver没有内置支持,只能手动先配置JDBC驱动支持。 二、配置步骤 1.客户端安装 要连接TDengine数据库,跟其他一般数据库连接一样,必须首先得安装客户端。 设置方法: 在properties节点增加true 然后,把编译后的target里生成的3个文件拷贝到Dbeaver的drivers目录,这里自建一个TDengine目录,例如: 3.Dbeaver 连接 做完第4步在新建连接弹框的界面里就可以看到“TDengine”,这个取名跟你在配置jdbc驱动那里取名是一致的。
Redis 5.x Mysql 5.7 + EMQX5.0+ or EMQX4.0+ TDengine =2.6(可选) 前端环境准备如下 NodeJs >= 12 Nginx 1.24.0 二,项目部署 convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root password: fastbee # 默认不启用TDengine ,true=启用,false=不启用 # 启用时,修改host地址,数据表名,账号密码等 tdengine-server: enabled: false 部署项目 2.5.1 下载 docker部署项目 git clone https://gitee.com/zhuangpengli/fastbee-docker.git cd fastbee-docker docker-compose.yml #使用emqx直接启动 docker-compose up -d
TDengine作为一款高性能、开源的时序数据库,凭借其卓越的性能和灵活的架构,成为众多企业的首选。本文将通过具体案例分析,探讨TDengine在实际应用中的优势和最佳实践。 一、TDengine在物联网中的应用案例:智能家居设备监控某智能家居公司使用TDengine来管理和分析其设备生成的海量数据。每个设备每秒钟生成数百条数据,包括温度、湿度、光照强度等。 优势:1.高效数据压缩:TDengine采用先进的数据压缩算法.显著减少了存储空间需求。2.快速查询性能:TDengine支持多种索引结构,能够快速响应用户的查询请求.满足实时监控需求。 二、TDengine在工业互联网中的应用案例:工业设备状态监测某大型制造企业使用TDengine来监控其生产线设备的运行状态.每台设备配备多个传感器.实时采集温度.压力.振动等数据。 优势:1.实时数据处理:TDengine支持流式计算,能够实时处理和分析数据流,满足工业监测的需求。2.高可用性:TDengine的分布式架构和数据副本机制,确保数据的高可用性和可靠性。
时序数据库备份与恢复策略解析:以TDengine为例一、时序数据库备份与恢复的重要性时序数据库广泛应用于物联网、金融、工业等领域,其数据具有高频写入、时间关联性强等特点。 日志回放:通过事务日志(如TDengine的WAL日志)回滚到故障前的精确时间点。灾难恢复计划定期模拟故障场景(如集群节点宕机),验证恢复流程有效性。 采用分布式架构(如TDengine的集群模式),支持主从切换与数据自动同步,提升容灾能力四、TDengine的备份与恢复实践TDengine作为专为时序数据设计的开源数据库,在备份与恢复方面提供了高效且灵活的解决方案 五、为什么推荐使用TDengine?高性能与低成本列式存储与数据压缩技术降低存储成本,查询效率提升10倍以上。开源核心代码,支持国产化环境(如麒麟OS、龙芯CPU)。 立即访问TDengine官方文档,获取更多技术细节与最佳实践!
时序数据库在处理大量时间序列数据时,查询性能至关重要。优化查询不仅能提高响应速度,还能降低系统资源消耗。本文将探讨时序数据库的查询优化技术。